using imitateMacQQ.WebApi.Domain.CircleServe.Entity.dto;
using imitateMacQQ.WebApi.Domain.Request.utils;

namespace imitateMacQQ.WebApi.Domain.CircleServe.Interface;

public interface IUpvote
{
    /// <summary>
    /// 点赞
    /// </summary>
    /// <param name="dto"></param>
    /// <returns></returns>
    public Task<Request<bool>> UpvoteServe(Upvote dto);

    /// <summary>
    /// 点赞通知 
    /// </summary>
    /// <param name="remarks">朋友圈识别号</param>
    /// <param name="account">点赞用户</param>
    /// <returns></returns>
    public Task<bool> SendLike(string? remarks, string? account);

    /// <summary>
    /// 取消点赞
    /// </summary>
    /// <param name="remarks">朋友圈识别号</param>
    /// <param name="account">取消用户</param>
    /// <returns></returns>
    public Task<bool> CancelLike(string? remarks, string? account);

    /// <summary>
    /// 获取点赞列表
    /// </summary>
    /// <param name="remarks"></param>
    /// <returns></returns>
    public Task<Request<string[]>> GetLikeList(string remarks);
}